package redlib.backend.service;

import redlib.backend.dto.BillingDetailsDTO;
import redlib.backend.dto.query.BillingDetailsQueryDTO;
import redlib.backend.dto.query.NameQueryDTO;
import redlib.backend.dto.query.TimeQueryDTO;
import redlib.backend.model.Page;
import redlib.backend.model.Select;
import redlib.backend.vo.BillingDetailsVO;
import redlib.backend.vo.NameSelectVO;
import redlib.backend.vo.TimeSelectVO;

import java.util.List;

public interface BillingDetailsService {

    //@Autowired
    //private AdminService adminService;

    //@Autowired
    Integer insert(BillingDetailsDTO billingDetailsDTO);

    Page<BillingDetailsVO> listByPage(BillingDetailsQueryDTO queryDTO);

    void deleteByCodes(List<Integer> ids);

    Integer updateBillingDetails(BillingDetailsDTO billingDetailsDTO);

    /**
     * @param
     * @return
     */
    Select<TimeSelectVO> timeSelect(TimeQueryDTO timeQueryDTO);

    Select<NameSelectVO> nameSelect(NameQueryDTO nameQueryDTO);
}
